[INV-BACKEND-024] Создать метод ReceivePartnerReceipt()

Реализация оркестратора вебхуков и gRPC-авторизации B2B

Author

Services Task & Simulation Framework Documentation

Published

July 13, 2026

NoteКраткая карточка задачи
  • Репозиторий / Компонент: helper-service (Домен INVENTORY).
  • Контракт метода: HTTP Handler ReceivePartnerReceipt().
  • Ссылка на Метод: Спецификация метода для B2B
  • Статус: Готово к реализации

  • Инструкция по шагам:
    1. На Шаге 3: Принять проксированный запрос от шлюза. Вытащить из заголовков shop_token, из тела — shop_id и инициировать блокирующий gRPC-вызов validateStoreToken к сервису авторизации auth-service.
    2. На Шаге 3а–4а: Если gRPC-ответ возвращает статус ошибки авторизации или блокировки партнера, немедленно прервать операцию и отдать внешнему клиенту ответ HTTP 401 Unauthorized.
    3. На Шаге 3б–4б: Если gRPC-ответ подтверждает валидность токена, мгновенно отправить внешнему партнеру ответ HTTP 200 OK. Сетевая сессия с ритейлером закрывается (Реализация паттерна Fire-and-Forget).
    4. На Шаге 5: Запустить асинхронный фоновый поток: упаковать доверенный JSON чека и опубликовать его в Kafka-топик балансового шлюза bpds.inventory.in.fridge_item.deduct. Пакет обязательно подписать оригинальным x_request_id и shop_id.